草庐IT

JavaFX - 许多静态 FXML Controller

全部标签

带有颜色选择器编辑器的 JavaFX tableview

我有一个TableView,它使用ColorPicker来(显示/编辑)单元格中的颜色。该表在所需字段中显示ColorPicker,但无法进行编辑。TableColumnc2=newTableColumn("Color");c2.setCellValueFactory(newPropertyValueFactory("color"));c2.setCellFactory(newCallback,TableCell>(){@OverridepublicTableCellcall(finalTableColumnparam){TableCellcell=newTableCell(){@Ov

java - 如何使用名为 cage 的静态方法创建一个 java 类,将 X 置于 jail 条形中?

这是我的家庭作业:如何创建一个名为cage(char[][]arr)的公共(public)方法,它返回一个char[][]。该方法应将X沿二维数组表示的网格的边界放置。此外,它应该沿着数组的列放置“条形图”,每个条形图跳过一列。例如,如果arr有8列,则返回数组如下所示:XXXXXXXXXXXXXXXXXXXXXX我的其他形式是这样的:使用如下指定的静态方法创建一个java类ArrayArt:一个名为frame(char[][]arr)的公共(public)方法,它返回一个char[][]。该方法应该将Xs沿着二维数组表示的网格的边界放置,然后它应该返回该数组。例如,如果arr有4列和

JavaFX - 加载图像和内存问题

我在将图像加载到我的应用程序时遇到了问题。我正在尝试制作一个简单的图像浏览器。在左边我有一个文件夹列表。单击列表中的文件夹名称后,图像应出现在右侧(流程Pane)。每个图像都在一个带边框的HBox中。但是我很快就遇到这样的错误:java.lang.outofmemoryerrorjavaheapspace我查看了任务管理器-如果我只加载6张照片,应用程序会占用500MB的内存!还有一件事-如果我更改列表中的文件夹,内存仍然被占用。在选择另一个文件夹时,我正在创建新的flowPaneflowPane=newFlowPane();所以旧的包含所有ImageView的应该被垃圾收集器删除,对

java - 加载大量文本时在 JavaFX 2 中加速 TextArea 的方法?

我正在为UI使用JavaFX2。我不得不在TextArea中放置大量文本;将500KB到1MB的文本加载到TextArea中。执行此操作时,在调整Pane大小时,使用BorderPane布局的UI运行速度较慢。有没有特定的方法可以加快速度?我应该使用的另一个UI组件? 最佳答案 现在好像没有更好的JFX文字渲染组件了。您可以依赖TextArea,或尝试将堆栈Pane中的textNode作为选项。但没有比这更好的了。TextArea的性能存在问题:javafx-jira.kenai.com/browse/RT-16853我的建议:您可

java - 静态语言和反射

据我所知,反射是在运行时创建/修改源代码的能力。来自维基百科:发现和修改源代码结构(例如代码块,类、方法、协议(protocol)等)作为第一类对象运行。转换与类或函数的符号名称匹配的字符串引用或调用该类或函数。评估一个字符串,就好像它是运行时的源代码语句一样。为该语言的字节码创建一个新的解释器,以提供一个新的编程结构的意义或目的。动态语言是我们可以在运行时求值(直接从字符串求值)的语言。来自维基百科:“程序的扩展,通过添加新代码,通过扩展对象和定义,或者通过修改类型系统”好的,现在我的问题是:静态语言(没有eval能力)如何有反射(例如Java)?(新的源代码不求值?:/)提前致谢!

java - 如何将 JavaFX 标签绑定(bind)到 ListView 中的选定项

我有一个充满POJO的ListView,并希望在GUI中有一个标签来显示所选项目的信息。我的POJO看起来像这样:classCustomer{privateStringname;...publicStringgetName(){returnname;}现在,当用户从列表中选择一个客户时,我希望在标签中显示所选客户的姓名。显然我不能直接绑定(bind)到name,因为它不是Property。(而且我不想用StringProperty对象替换我的CustomersString,因为SimpleStringProperty不是可序列化的并且我需要通过RMI传输Customer。)我已经尝试了

java - 当用户拖动以调整舞台窗口大小时,如何让 JavaFX 节点(文本区域、文本字段)正确调整大小?

当用户拖动以调整舞台窗口大小时,如何让JavaFX节点(textarea、textfield)正确调整大小?我有一段代码可以创建具有两个节点(TextArea、TextField)的舞台VBox。但是,当用户拖动以调整窗口大小时,这些组件并没有按比例拖动。请看图片:这是我的代码,关于如何实现修复以使文本字段始终位于底部并且文本区域扩展以填充空白区域的任何建议?谢谢!Stagestage=newStage();VBoxroot=newVBox();textArea=newTextArea();textField=newTextField();root.getChildren().addA

未找到 JavaFX 包

我正在尝试创建一个结合了Swing和JavaFX组件的项目,但我的IDE找不到JavaFX包(已尝试使用Netbeans和Eclipse)。importjavafx.embed.swing.JFXPanel;表示包javafx.embed.swing.JFXPanel不存在,对于任何其他fx包也是如此。当我使用newproject>javaapplication创建项目时会发生这种情况,但如果我尝试创建JavaFX示例,它会工作...我不知道我在这里错过了什么。以下是我尝试过的一些背景信息和步骤:我正在使用win7和jdk7(其中应包括javaFX)我在Netbeans(版本8)中的项

java - 有成对的执行相同任务的静态方法和实例方法吗?

在开发一个二维vector类作为数学库的一部分时,出于风格和可用性的原因,我正在考虑使用静态方法和实例方法对。也就是说,两个等价的函数,但一个是静态的和非变异的,另一个是实例化的和变异的。我知道我不是第一个考虑这个问题的人(例如,参见here),但我还没有找到任何直接解决这个问题的信息。拥有静态和实例方法对的优点:有些人更喜欢使用其中一种,在某些情况下,能够进行选择会使代码更易于阅读。这意味着当同时提供静态方法和实例方法时,静态方法不会发生变化。这可以使调用代码更加清晰,例如:someVector=Vector2d.add(vec1,vec2);someVector=(newVecto

java - Java 中的二叉树静态方法

我的二叉树和搜索二叉树的Java实现中有这些实例方法:getSize()、getHeight()、getDepth()、getPreOrder()、getInOrder()、getPostOrder()和getLevelOrder()。这些方法在其他具有参数Node的递归方法中使用树的根。从OOP的角度来看,哪个更适合使用:将这些递归方法用作静态方法,因为它们使用不属于实际类的对象(Node),并且它们不使用任何类属性,它们可以是实例方法,因为它们可以在这棵树的子树中使用,并且不使用任何静态属性,或者它们可能在其他静态类中,例如UtilsTree()? 最佳